﻿//
// XN4SL - Xna Framework for Silverlight.
//
using System;

namespace Xn4Sl.Framework.Storage
{
    /// <summary>
    /// Represents a logical collection of storage files.
    /// </summary>
    public sealed class StorageContainer : IDisposable
    {
        /// <summary>
        /// Gets a value that indicates whether the object is disposed.
        /// </summary>
        public bool IsDisposed
        {
            get
            {
                throw new NotImplementedException();
            }
        }

        /// <summary>
        /// Gets the file path to the location of the user's save game files.
        /// </summary>
        public string Path
        {
            get
            {
                throw new NotImplementedException();
            }
        }

        /// <summary>
        /// Gets the StorageDevice that holds the files in this container.
        /// </summary>
        public StorageDevice StorageDevice
        {
            get
            {
                throw new NotImplementedException();
            }
        }

        /// <summary>
        /// Gets the file path to the location of the title storage space.
        /// </summary>
        public static string TitleLocation
        {
            get
            {
                return "";
            }
        }

        /// <summary>
        /// Gets the name of the title.
        /// </summary>
        public string TitleName
        {
            get
            {
                throw new NotImplementedException();
            }
        }

        /// <summary>
        /// Occurs when Dispose is called or when this object is finalized and collected
        /// by the garbage collector of the Microsoft .NET common language runtime.
        /// </summary>
        public event EventHandler Disposing;

        /// <summary>
        /// Deletes the storage container.
        /// </summary>
        public void Delete()
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Immediately releases the unmanaged resources used by this object.
        /// </summary>
        public void Dispose()
        {
            if (this.Disposing != null) this.Disposing(this, null);
        }
    }
}
